<?php
namespace app\common\model;

use think\Db;
use think\Model;
use think\Session;

class Goods extends Model
{
    /**
     * 浏览量+1
     */
    public function addReading($id){
        $map['id'] = $id;
        return self::where($map)->setInc('reading');
    }
    /**
     * 评论+1
     */
    public function addComment($id){
        $map['id'] = $id;
        return self::where($map)->setInc('comments');
    }

    /** 后台规格列表
     * @param $where
     * @return bool|\think\Paginator
     */
    public function index($where)
    {
        $list = Db::name('goods')->alias('g')
            ->join('floor f','g.fid = f.id', 'LEFT')
            ->where($where)
            ->field(['g.id', 'f.name f_name', 'g.name g_name', 'g.calculationtype', 'g.type', 'g.unitprice', 'g.minprice',
            'g.create_time', 'g.update_time'])
            ->order('g.id desc')
            ->paginate(15);
        if (sizeof($list) == 0) {
            return false;
        }
        return $list;
    }

    /**
     * @param $data
     * @return array
     * 添加商品
     */
    public function addGoods ($data)
    {
        $res = $this->save($data);
        $id = $this->id;
        if($res){
            $return = ['code'=>1,'msg'=>'发布成功','data'=>$id];
        }else{
            $return = ['code'=>0 ,'msg' => '发布失败'];
        }
        return $return;
    }

    /*
     * 根据商品名称查询商品id
     */
    public function nameToId($name){
        $res = $this->where(['title'=>$name])->find();
        return $res;
    }


    /**
     * @param $map
     * @return array|false|\PDOStatement|string|Model
     * 根据条件查询商品信息
     */
    public function getGoodsInfo($map){
        $res = $this->where($map)->find();
        return $res;
    }

    /**
     * 前台  根据类型  查找该分类下面的装订方式
     */
    public function bindingStyle($fid)
    {
        return Db::name('goods')->where('fid', $fid)->where('type', 2)->field(['id', 'name'])->select();
    }
    /**
     * 前台  根据类型查找该分类下的后道工序
     */
    public function postProcess($fid)
    {
        return Db::name('goods')->where('fid', $fid)->where('type', 1)->field(['id', 'name'])->select();
    }

    /**
     * 前台  根据后道工序的ID 查询当前用户选择的详细信息
     */
    public function getGoodsdetail($id)
    {
        return Db::name('goods')->where('id', $id)->field(['calculationtype', 'unitprice', 'minprice'])->find();
    }





}